#ifndef ARRAYEX_H
#define ARRAYEX_H

#ifndef CORE_H
# include "..\..\inc\System\Core.h"
#endif
#include <string.h>

namespace Structs {

	class ArrayEx
	{
	public:
		static inline int Compare(byte a[], byte b[], int count) { return memcmp(a, b, count); }
		static inline int Compare(byte a[], int aOffset, byte b[], int bOffset, int count) { return memcmp(b + aOffset, b + bOffset, count); }
		//static inline int Compare(byte a[], int aOffset, string b, int count)
  //      {
  //          //if (array_getLength(a) < aOffset + count) return (array_getLength(a) - aOffset < array_getLength(b) ? -1 : 1);
  //          if (array_getLength(b) < count) return 1;
  //          for (int i = 0; i < count; i++)
  //              if (a[i + aOffset] != b[i]) return (a[i + aOffset] < b[i] ? -1 : 1);
  //          return 0;
  //      }
	};
}

#endif // ARRAYEX_H